package cn.itcast.dao;

import cn.itcast.pojo.Permission;
import com.github.pagehelper.Page;
import org.apache.ibatis.annotations.Param;


import java.util.List;
import java.util.Set;

public interface PermissionDao {

    /**
     * 分页查询
     * @return
     */
    Page<Permission> queryPermissionList(String queryString);

    /**
     * 查询所有
     * @return
     */
    List<Permission> findAll();

    /**
     * 新增
     * @param permission
     * @return
     */
    Boolean addPermission(Permission permission);

    /**
     * 根据id查询数据
     * @param pid
     * @return
     */
    Permission queryPermissionById(String pid);

    /**
     * 修改
     * @param permission
     * @return
     */
    Boolean updatePermission(Permission permission);

    /**
     * 删除
     * @param pid
     * @return
     */
    Boolean deletePermission(String pid);

    /**
     * 根据权限角色查询对应的权限信息
     * @param rid
     * @return
     */
    Set<Permission> queryPermissionByRoleId(@Param("role_id") Integer rid);
}
